Micron Document
`:top
`!JavaCC`! (`*`!Java`! `!C`!ompiler `!C`!ompiler`*) ist ein `F33f`_`[Lexer-`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Lexikalischer_Scanner]`_`f und `F33f`_`[Parsergenerator`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Parsergenerator]`_`f, der in `F33f`_`[Java`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Java_(Programmiersprache)]`_`f implementiert ist und als Ausgabe Java- und `F33f`_`[C++`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=C++]`_`f-Quellcode erzeugt.`:cite-ref-2[`F5bf`_`[2`#cite-note-2]`_`f] JavaCC ist `F33f`_`[Open Source`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Open_Source]`_`f und unter den Bedingungen der `F33f`_`[BSD-Lizenz`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=BSD-Lizenz]`_`f herausgegeben.

JavaCC funktioniert ähnlich wie das bekannte Programm `F33f`_`[Yacc`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Yacc]`_`f, benutzt aber ein anderes Verfahren zum Parsen der Daten: JavaCC erzeugt einen `F33f`_`[LL(k)-Parser`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=LL-Parser]`_`f, während Yacc einen `F33f`_`[LALR(1)-Parser`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=LALR-Parser]`_`f erzeugt. Die `F33f`_`[Grammatik`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Formale_Grammatik]`_`f muss also etwas anders strukturiert sein, als dies bei Yacc der Fall wäre.

>>Contents

• `F0af`_`[Programme und Bibliotheken, die intern JavaCC verwenden`#programme-und-bibliotheken-die-intern-javacc-verwenden]`_`f
• `F0af`_`[Siehe auch`#siehe-auch]`_`f
• `F0af`_`[Literatur`#literatur]`_`f
• `F0af`_`[Einzelnachweise`#einzelnachweise]`_`f

-─

>>Programme und Bibliotheken, die intern JavaCC verwenden

• Das Open-Source Suchmaschinen-Framework `F33f`_`[Lucene`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Lucene]`_`f nutzt JavaCC zur Generierung des Lexers und des Query-Parsers.`:cite-ref-3[`F5bf`_`[3`#cite-note-3]`_`f]
• Die Open-Source Template-Engine `F33f`_`[Velocity`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Apache_Velocity]`_`f greift für seine Parserfunktionen auf JavaCC zurück.`:cite-ref-4[`F5bf`_`[4`#cite-note-4]`_`f]
• Das zur statischen Codeanalyse von Quelltexten genutzte Werkzeug `F33f`_`[PMD`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=PMD_(Software)]`_`f verwendet zur Verarbeitung der benutzerdefinierten Regeln intern JavaCC.`:cite-ref-5[`F5bf`_`[5`#cite-note-5]`_`f]
• Das Java-API des Ontologie-Projekts `F33f`_`[Cyc`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Cyc]`_`f greift für seine Parserfunktionen auf JavaCC zurück.

>>Siehe auch

• JFlex (in Java geschriebener Scanner-Generator für Java)
• SableCC (Compiler-Compiler für LALR(1)-Parser in Java)
• `F33f`_`[ANTLR`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=ANTLR]`_`f (Compiler-Compiler für LL(*)-Parser in verschiedenen Zielsprachen)
• `F33f`_`[Coco/R`:/page/entry.mu`zim=wikipedia_de_all_nopic_2026-01.zim|entry_path=Coco/R]`_`f (Compiler-Compiler für LL(k)-Parser in verschiedenen Zielsprachen)

>>Literatur

• Tom Copeland: Generating Parsers with JavaCC. 2. Auflage. Centennial Books, Alexandria, 2009, ISBN 978-0-9762214-3-2.
• Anthony J. Dos Reis, Laura L. Dos Reis: Compiler Construction Using Java, JavaCC, and Yacc. 1. Auflage. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7.

>>Einzelnachweise

`:cite-note-3de41400f921e4e2-1`!1.`! Release 7.0.13. 18. November 2023 (abgerufen am 18. November 2023).
`:cite-note-2`!2.`! `F0af`_`[↑`#cite-ref-2]`_`f `*JavaCC Announce Mailinglist on Java.net.`* Archiviert vom Original (nicht mehr online verfügbar) am 11. April 2016; abgerufen am 9. September 2013 (englisch).
`:cite-note-3`!3.`! `F0af`_`[↑`#cite-ref-3]`_`f `*Apache Lucene package documentation.`* Abgerufen am 9. September 2013 (englisch).
`:cite-note-4`!4.`! `F0af`_`[↑`#cite-ref-4]`_`f `*The Apache Velocity project – Required Tools.`* Abgerufen am 9. September 2013 (englisch).
`:cite-note-5`!5.`! `F0af`_`[↑`#cite-ref-5]`_`f `*Customizing PMD – How to write a PMD rule.`* Abgerufen am 9. September 2013 (englisch).

`c`F0af`_`[↑ Back to top`#top]`_`f`a